(function(process, global) {
    !(function() {
        var ERROR = "input is invalid type",
            WINDOW = "object" == typeof window,
            root = WINDOW ? window : {};
        root.JS_MD5_NO_WINDOW && (WINDOW = !1);
        var WEB_WORKER = !WINDOW && "object" == typeof self,
            NODE_JS = !root.JS_MD5_NO_NODE_JS && "object" == typeof process && process.versions && process.versions.node;
        NODE_JS ? (root = global) : WEB_WORKER && (root = self);
        var COMMON_JS = !root.JS_MD5_NO_COMMON_JS && "object" == typeof module && module.exports,
            AMD = "function" == typeof define && define.amd,
            ARRAY_BUFFER = !root.JS_MD5_NO_ARRAY_BUFFER && "undefined" != typeof ArrayBuffer,
            HEX_CHARS = "0123456789abcdef".split(""),
            EXTRA = [128, 32768, 8388608, -2147483648],
            SHIFT = [0, 8, 16, 24],
            OUTPUT_TYPES = ["hex", "array", "digest", "buffer", "arrayBuffer", "base64"],
            BASE64_ENCODE_CHAR = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),
            blocks = [],
            buffer8;
        if (ARRAY_BUFFER) {
            var buffer = new ArrayBuffer(68);
            (buffer8 = new Uint8Array(buffer)), (blocks = new Uint32Array(buffer));
        }
        (!root.JS_MD5_NO_NODE_JS && Array.isArray) ||
        (Array.isArray = function(e) {
            return "[object Array]" === Object.prototype.toString.call(e);
        }), !ARRAY_BUFFER ||
            (!root.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW && ArrayBuffer.isView) ||
            (ArrayBuffer.isView = function(e) {
                return "object" == typeof e && e.buffer && e.buffer.constructor === ArrayBuffer;
            });
        var createOutputMethod = function(e) {
                return function(t) {
                    return new Md5(!0).update(t)[e]();
                };
            },
            createMethod = function() {
                var e = createOutputMethod("hex");
                NODE_JS && (e = nodeWrap(e)),
                    (e.create = function() {
                        return new Md5();
                    }),
                    (e.update = function(t) {
                        return e.create().update(t);
                    });
                for (var t = 0; t < OUTPUT_TYPES.length; ++t) {
                    var o = OUTPUT_TYPES[t];
                    e[o] = createOutputMethod(o);
                }
                return e;
            },
            nodeWrap = function nodeWrap(method) {
                var crypto = eval("require('crypto')"),
                    Buffer = eval("require('buffer').Buffer"),
                    nodeMethod = function(e) {
                        if ("string" == typeof e) return crypto.createHash("md5").update(e, "utf8").digest("hex");
                        if (null == e) throw ERROR;
                        return (
                            e.constructor === ArrayBuffer && (e = new Uint8Array(e)),
                            Array.isArray(e) || ArrayBuffer.isView(e) || e.constructor === Buffer ?
                            crypto.createHash("md5").update(new Buffer(e)).digest("hex") :
                            method(e)
                        );
                    };
                return nodeMethod;
            };

        function Md5(e) {
            if (e)
                (blocks[0] =
                    blocks[16] =
                    blocks[1] =
                    blocks[2] =
                    blocks[3] =
                    blocks[4] =
                    blocks[5] =
                    blocks[6] =
                    blocks[7] =
                    blocks[8] =
                    blocks[9] =
                    blocks[10] =
                    blocks[11] =
                    blocks[12] =
                    blocks[13] =
                    blocks[14] =
                    blocks[15] =
                    0),
                (this.blocks = blocks),
                (this.buffer8 = buffer8);
            else if (ARRAY_BUFFER) {
                var t = new ArrayBuffer(68);
                (this.buffer8 = new Uint8Array(t)), (this.blocks = new Uint32Array(t));
            } else this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
            (this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = this.hBytes = 0),
            (this.finalized = this.hashed = !1),
            (this.first = !0);
        }
        (Md5.prototype.update = function(e) {
            if (!this.finalized) {
                var t,
                    o = typeof e;
                if ("string" !== o) {
                    if ("object" !== o) throw ERROR;
                    if (null === e) throw ERROR;
                    if (ARRAY_BUFFER && e.constructor === ArrayBuffer) e = new Uint8Array(e);
                    else if (!(Array.isArray(e) || (ARRAY_BUFFER && ArrayBuffer.isView(e)))) throw ERROR;
                    t = !0;
                }
                for (var n, i, a = 0, r = e.length, s = this.blocks, c = this.buffer8; a < r;) {
                    if (
                        (this.hashed &&
                            ((this.hashed = !1),
                                (s[0] = s[16]),
                                (s[16] =
                                    s[1] =
                                    s[2] =
                                    s[3] =
                                    s[4] =
                                    s[5] =
                                    s[6] =
                                    s[7] =
                                    s[8] =
                                    s[9] =
                                    s[10] =
                                    s[11] =
                                    s[12] =
                                    s[13] =
                                    s[14] =
                                    s[15] =
                                    0)),
                            t)
                    ) {
                        if (ARRAY_BUFFER)
                            for (i = this.start; a < r && i < 64; ++a) c[i++] = e[a];
                        else
                            for (i = this.start; a < r && i < 64; ++a) s[i >> 2] |= e[a] << SHIFT[3 & i++];
                    } else if (ARRAY_BUFFER)
                        for (i = this.start; a < r && i < 64; ++a)
                            (n = e.charCodeAt(a)) < 128 ?
                            (c[i++] = n) :
                            n < 2048 ?
                            ((c[i++] = 192 | (n >> 6)), (c[i++] = 128 | (63 & n))) :
                            n < 55296 || n >= 57344 ?
                            ((c[i++] = 224 | (n >> 12)),
                                (c[i++] = 128 | ((n >> 6) & 63)),
                                (c[i++] = 128 | (63 & n))) :
                            ((n = 65536 + (((1023 & n) << 10) | (1023 & e.charCodeAt(++a)))),
                                (c[i++] = 240 | (n >> 18)),
                                (c[i++] = 128 | ((n >> 12) & 63)),
                                (c[i++] = 128 | ((n >> 6) & 63)),
                                (c[i++] = 128 | (63 & n)));
                    else
                        for (i = this.start; a < r && i < 64; ++a)
                            (n = e.charCodeAt(a)) < 128 ?
                            (s[i >> 2] |= n << SHIFT[3 & i++]) :
                            n < 2048 ?
                            ((s[i >> 2] |= (192 | (n >> 6)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | (63 & n)) << SHIFT[3 & i++])) :
                            n < 55296 || n >= 57344 ?
                            ((s[i >> 2] |= (224 | (n >> 12)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | ((n >> 6) & 63)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | (63 & n)) << SHIFT[3 & i++])) :
                            ((n = 65536 + (((1023 & n) << 10) | (1023 & e.charCodeAt(++a)))),
                                (s[i >> 2] |= (240 | (n >> 18)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | ((n >> 12) & 63)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | ((n >> 6) & 63)) << SHIFT[3 & i++]),
                                (s[i >> 2] |= (128 | (63 & n)) << SHIFT[3 & i++]));
                    (this.lastByteIndex = i),
                    (this.bytes += i - this.start),
                    i >= 64 ? ((this.start = i - 64), this.hash(), (this.hashed = !0)) : (this.start = i);
                }
                return (
                    this.bytes > 4294967295 &&
                    ((this.hBytes += (this.bytes / 4294967296) << 0), (this.bytes = this.bytes % 4294967296)),
                    this
                );
            }
        }),
        (Md5.prototype.finalize = function() {
            if (!this.finalized) {
                this.finalized = !0;
                var e = this.blocks,
                    t = this.lastByteIndex;
                (e[t >> 2] |= EXTRA[3 & t]),
                t >= 56 &&
                    (this.hashed || this.hash(),
                        (e[0] = e[16]),
                        (e[16] =
                            e[1] =
                            e[2] =
                            e[3] =
                            e[4] =
                            e[5] =
                            e[6] =
                            e[7] =
                            e[8] =
                            e[9] =
                            e[10] =
                            e[11] =
                            e[12] =
                            e[13] =
                            e[14] =
                            e[15] =
                            0)),
                    (e[14] = this.bytes << 3),
                    (e[15] = (this.hBytes << 3) | (this.bytes >>> 29)),
                    this.hash();
            }
        }),
        (Md5.prototype.hash = function() {
            var e,
                t,
                o,
                n,
                i,
                a,
                r = this.blocks;
            this.first ?
                (t =
                    ((((t =
                                    ((e = ((((e = r[0] - 680876937) << 7) | (e >>> 25)) - 271733879) << 0) ^
                                        ((o =
                                                ((((o =
                                                                (-271733879 ^
                                                                    ((n =
                                                                            ((((n = (-1732584194 ^ (2004318071 & e)) + r[1] - 117830708) << 12) |
                                                                                    (n >>> 20)) +
                                                                                e) <<
                                                                            0) &
                                                                        (-271733879 ^ e))) +
                                                                r[2] -
                                                                1126478375) <<
                                                            17) |
                                                        (o >>> 15)) +
                                                    n) <<
                                                0) &
                                            (n ^ e))) +
                                    r[3] -
                                    1316259209) <<
                                22) |
                            (t >>> 10)) +
                        o) <<
                    0) :
                ((e = this.h0),
                    (t = this.h1),
                    (o = this.h2),
                    (t =
                        ((((t +=
                                        ((e =
                                                ((((e += ((n = this.h3) ^ (t & (o ^ n))) + r[0] - 680876936) << 7) | (e >>> 25)) +
                                                    t) <<
                                                0) ^
                                            ((o =
                                                    ((((o +=
                                                                    (t ^
                                                                        ((n =
                                                                                ((((n += (o ^ (e & (t ^ o))) + r[1] - 389564586) << 12) |
                                                                                        (n >>> 20)) +
                                                                                    e) <<
                                                                                0) &
                                                                            (e ^ t))) +
                                                                    r[2] +
                                                                    606105819) <<
                                                                17) |
                                                            (o >>> 15)) +
                                                        n) <<
                                                    0) &
                                                (n ^ e))) +
                                        r[3] -
                                        1044525330) <<
                                    22) |
                                (t >>> 10)) +
                            o) <<
                        0)),
                (t =
                    ((((t +=
                                    ((e = ((((e += (n ^ (t & (o ^ n))) + r[4] - 176418897) << 7) | (e >>> 25)) + t) << 0) ^
                                        ((o =
                                                ((((o +=
                                                                (t ^
                                                                    ((n =
                                                                            ((((n += (o ^ (e & (t ^ o))) + r[5] + 1200080426) << 12) | (n >>> 20)) +
                                                                                e) <<
                                                                            0) &
                                                                        (e ^ t))) +
                                                                r[6] -
                                                                1473231341) <<
                                                            17) |
                                                        (o >>> 15)) +
                                                    n) <<
                                                0) &
                                            (n ^ e))) +
                                    r[7] -
                                    45705983) <<
                                22) |
                            (t >>> 10)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((e = ((((e += (n ^ (t & (o ^ n))) + r[8] + 1770035416) << 7) | (e >>> 25)) + t) << 0) ^
                                        ((o =
                                                ((((o +=
                                                                (t ^
                                                                    ((n =
                                                                            ((((n += (o ^ (e & (t ^ o))) + r[9] - 1958414417) << 12) | (n >>> 20)) +
                                                                                e) <<
                                                                            0) &
                                                                        (e ^ t))) +
                                                                r[10] -
                                                                42063) <<
                                                            17) |
                                                        (o >>> 15)) +
                                                    n) <<
                                                0) &
                                            (n ^ e))) +
                                    r[11] -
                                    1990404162) <<
                                22) |
                            (t >>> 10)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((e = ((((e += (n ^ (t & (o ^ n))) + r[12] + 1804603682) << 7) | (e >>> 25)) + t) << 0) ^
                                        ((o =
                                                ((((o +=
                                                                (t ^
                                                                    ((n =
                                                                            ((((n += (o ^ (e & (t ^ o))) + r[13] - 40341101) << 12) | (n >>> 20)) +
                                                                                e) <<
                                                                            0) &
                                                                        (e ^ t))) +
                                                                r[14] -
                                                                1502002290) <<
                                                            17) |
                                                        (o >>> 15)) +
                                                    n) <<
                                                0) &
                                            (n ^ e))) +
                                    r[15] +
                                    1236535329) <<
                                22) |
                            (t >>> 10)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                (o &
                                                                    ((e =
                                                                            ((((e += (o ^ (n & (t ^ o))) + r[1] - 165796510) << 5) | (e >>> 27)) +
                                                                                t) <<
                                                                            0) ^
                                                                        t))) +
                                                            r[6] -
                                                            1069501632) <<
                                                        9) |
                                                    (n >>> 23)) +
                                                e) <<
                                            0) ^
                                        (e &
                                            ((o =
                                                    ((((o += (e ^ (t & (n ^ e))) + r[11] + 643717713) << 14) | (o >>> 18)) + n) <<
                                                    0) ^
                                                n))) +
                                    r[0] -
                                    373897302) <<
                                20) |
                            (t >>> 12)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                (o &
                                                                    ((e =
                                                                            ((((e += (o ^ (n & (t ^ o))) + r[5] - 701558691) << 5) | (e >>> 27)) +
                                                                                t) <<
                                                                            0) ^
                                                                        t))) +
                                                            r[10] +
                                                            38016083) <<
                                                        9) |
                                                    (n >>> 23)) +
                                                e) <<
                                            0) ^
                                        (e &
                                            ((o =
                                                    ((((o += (e ^ (t & (n ^ e))) + r[15] - 660478335) << 14) | (o >>> 18)) + n) <<
                                                    0) ^
                                                n))) +
                                    r[4] -
                                    405537848) <<
                                20) |
                            (t >>> 12)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                (o &
                                                                    ((e =
                                                                            ((((e += (o ^ (n & (t ^ o))) + r[9] + 568446438) << 5) | (e >>> 27)) +
                                                                                t) <<
                                                                            0) ^
                                                                        t))) +
                                                            r[14] -
                                                            1019803690) <<
                                                        9) |
                                                    (n >>> 23)) +
                                                e) <<
                                            0) ^
                                        (e &
                                            ((o =
                                                    ((((o += (e ^ (t & (n ^ e))) + r[3] - 187363961) << 14) | (o >>> 18)) + n) <<
                                                    0) ^
                                                n))) +
                                    r[8] +
                                    1163531501) <<
                                20) |
                            (t >>> 12)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                (o &
                                                                    ((e =
                                                                            ((((e += (o ^ (n & (t ^ o))) + r[13] - 1444681467) << 5) | (e >>> 27)) +
                                                                                t) <<
                                                                            0) ^
                                                                        t))) +
                                                            r[2] -
                                                            51403784) <<
                                                        9) |
                                                    (n >>> 23)) +
                                                e) <<
                                            0) ^
                                        (e &
                                            ((o =
                                                    ((((o += (e ^ (t & (n ^ e))) + r[7] + 1735328473) << 14) | (o >>> 18)) + n) <<
                                                    0) ^
                                                n))) +
                                    r[12] -
                                    1926607734) <<
                                20) |
                            (t >>> 12)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((a =
                                            (n =
                                                ((((n +=
                                                                ((i = t ^ o) ^
                                                                    (e = ((((e += (i ^ n) + r[5] - 378558) << 4) | (e >>> 28)) + t) << 0)) +
                                                                r[8] -
                                                                2022574463) <<
                                                            11) |
                                                        (n >>> 21)) +
                                                    e) <<
                                                0) ^ e) ^
                                        (o = ((((o += (a ^ t) + r[11] + 1839030562) << 16) | (o >>> 16)) + n) << 0)) +
                                    r[14] -
                                    35309556) <<
                                23) |
                            (t >>> 9)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((a =
                                            (n =
                                                ((((n +=
                                                                ((i = t ^ o) ^
                                                                    (e = ((((e += (i ^ n) + r[1] - 1530992060) << 4) | (e >>> 28)) + t) << 0)) +
                                                                r[4] +
                                                                1272893353) <<
                                                            11) |
                                                        (n >>> 21)) +
                                                    e) <<
                                                0) ^ e) ^
                                        (o = ((((o += (a ^ t) + r[7] - 155497632) << 16) | (o >>> 16)) + n) << 0)) +
                                    r[10] -
                                    1094730640) <<
                                23) |
                            (t >>> 9)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((a =
                                            (n =
                                                ((((n +=
                                                                ((i = t ^ o) ^
                                                                    (e = ((((e += (i ^ n) + r[13] + 681279174) << 4) | (e >>> 28)) + t) << 0)) +
                                                                r[0] -
                                                                358537222) <<
                                                            11) |
                                                        (n >>> 21)) +
                                                    e) <<
                                                0) ^ e) ^
                                        (o = ((((o += (a ^ t) + r[3] - 722521979) << 16) | (o >>> 16)) + n) << 0)) +
                                    r[6] +
                                    76029189) <<
                                23) |
                            (t >>> 9)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((a =
                                            (n =
                                                ((((n +=
                                                                ((i = t ^ o) ^
                                                                    (e = ((((e += (i ^ n) + r[9] - 640364487) << 4) | (e >>> 28)) + t) << 0)) +
                                                                r[12] -
                                                                421815835) <<
                                                            11) |
                                                        (n >>> 21)) +
                                                    e) <<
                                                0) ^ e) ^
                                        (o = ((((o += (a ^ t) + r[15] + 530742520) << 16) | (o >>> 16)) + n) << 0)) +
                                    r[2] -
                                    995338651) <<
                                23) |
                            (t >>> 9)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                ((e =
                                                                        ((((e += (o ^ (t | ~n)) + r[0] - 198630844) << 6) | (e >>> 26)) + t) << 0) |
                                                                    ~o)) +
                                                            r[7] +
                                                            1126891415) <<
                                                        10) |
                                                    (n >>> 22)) +
                                                e) <<
                                            0) ^
                                        ((o = ((((o += (e ^ (n | ~t)) + r[14] - 1416354905) << 15) | (o >>> 17)) + n) << 0) |
                                            ~e)) +
                                    r[5] -
                                    57434055) <<
                                21) |
                            (t >>> 11)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                ((e =
                                                                        ((((e += (o ^ (t | ~n)) + r[12] + 1700485571) << 6) | (e >>> 26)) + t) <<
                                                                        0) |
                                                                    ~o)) +
                                                            r[3] -
                                                            1894986606) <<
                                                        10) |
                                                    (n >>> 22)) +
                                                e) <<
                                            0) ^
                                        ((o = ((((o += (e ^ (n | ~t)) + r[10] - 1051523) << 15) | (o >>> 17)) + n) << 0) |
                                            ~e)) +
                                    r[1] -
                                    2054922799) <<
                                21) |
                            (t >>> 11)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                ((e =
                                                                        ((((e += (o ^ (t | ~n)) + r[8] + 1873313359) << 6) | (e >>> 26)) + t) <<
                                                                        0) |
                                                                    ~o)) +
                                                            r[15] -
                                                            30611744) <<
                                                        10) |
                                                    (n >>> 22)) +
                                                e) <<
                                            0) ^
                                        ((o = ((((o += (e ^ (n | ~t)) + r[6] - 1560198380) << 15) | (o >>> 17)) + n) << 0) |
                                            ~e)) +
                                    r[13] +
                                    1309151649) <<
                                21) |
                            (t >>> 11)) +
                        o) <<
                    0),
                (t =
                    ((((t +=
                                    ((n =
                                            ((((n +=
                                                            (t ^
                                                                ((e =
                                                                        ((((e += (o ^ (t | ~n)) + r[4] - 145523070) << 6) | (e >>> 26)) + t) << 0) |
                                                                    ~o)) +
                                                            r[11] -
                                                            1120210379) <<
                                                        10) |
                                                    (n >>> 22)) +
                                                e) <<
                                            0) ^
                                        ((o = ((((o += (e ^ (n | ~t)) + r[2] + 718787259) << 15) | (o >>> 17)) + n) << 0) |
                                            ~e)) +
                                    r[9] -
                                    343485551) <<
                                21) |
                            (t >>> 11)) +
                        o) <<
                    0),
                this.first ?
                ((this.h0 = (e + 1732584193) << 0),
                    (this.h1 = (t - 271733879) << 0),
                    (this.h2 = (o - 1732584194) << 0),
                    (this.h3 = (n + 271733878) << 0),
                    (this.first = !1)) :
                ((this.h0 = (this.h0 + e) << 0),
                    (this.h1 = (this.h1 + t) << 0),
                    (this.h2 = (this.h2 + o) << 0),
                    (this.h3 = (this.h3 + n) << 0));
        }),
        (Md5.prototype.hex = function() {
            this.finalize();
            var e = this.h0,
                t = this.h1,
                o = this.h2,
                n = this.h3;
            return (
                HEX_CHARS[(e >> 4) & 15] +
                HEX_CHARS[15 & e] +
                HEX_CHARS[(e >> 12) & 15] +
                HEX_CHARS[(e >> 8) & 15] +
                HEX_CHARS[(e >> 20) & 15] +
                HEX_CHARS[(e >> 16) & 15] +
                HEX_CHARS[(e >> 28) & 15] +
                HEX_CHARS[(e >> 24) & 15] +
                HEX_CHARS[(t >> 4) & 15] +
                HEX_CHARS[15 & t] +
                HEX_CHARS[(t >> 12) & 15] +
                HEX_CHARS[(t >> 8) & 15] +
                HEX_CHARS[(t >> 20) & 15] +
                HEX_CHARS[(t >> 16) & 15] +
                HEX_CHARS[(t >> 28) & 15] +
                HEX_CHARS[(t >> 24) & 15] +
                HEX_CHARS[(o >> 4) & 15] +
                HEX_CHARS[15 & o] +
                HEX_CHARS[(o >> 12) & 15] +
                HEX_CHARS[(o >> 8) & 15] +
                HEX_CHARS[(o >> 20) & 15] +
                HEX_CHARS[(o >> 16) & 15] +
                HEX_CHARS[(o >> 28) & 15] +
                HEX_CHARS[(o >> 24) & 15] +
                HEX_CHARS[(n >> 4) & 15] +
                HEX_CHARS[15 & n] +
                HEX_CHARS[(n >> 12) & 15] +
                HEX_CHARS[(n >> 8) & 15] +
                HEX_CHARS[(n >> 20) & 15] +
                HEX_CHARS[(n >> 16) & 15] +
                HEX_CHARS[(n >> 28) & 15] +
                HEX_CHARS[(n >> 24) & 15]
            );
        }),
        (Md5.prototype.toString = Md5.prototype.hex),
        (Md5.prototype.digest = function() {
            this.finalize();
            var e = this.h0,
                t = this.h1,
                o = this.h2,
                n = this.h3;
            return [
                255 & e,
                (e >> 8) & 255,
                (e >> 16) & 255,
                (e >> 24) & 255,
                255 & t,
                (t >> 8) & 255,
                (t >> 16) & 255,
                (t >> 24) & 255,
                255 & o,
                (o >> 8) & 255,
                (o >> 16) & 255,
                (o >> 24) & 255,
                255 & n,
                (n >> 8) & 255,
                (n >> 16) & 255,
                (n >> 24) & 255
            ];
        }),
        (Md5.prototype.array = Md5.prototype.digest),
        (Md5.prototype.arrayBuffer = function() {
            this.finalize();
            var e = new ArrayBuffer(16),
                t = new Uint32Array(e);
            return (t[0] = this.h0), (t[1] = this.h1), (t[2] = this.h2), (t[3] = this.h3), e;
        }),
        (Md5.prototype.buffer = Md5.prototype.arrayBuffer),
        (Md5.prototype.base64 = function() {
            for (var e, t, o, n = "", i = this.array(), a = 0; a < 15;)
                (e = i[a++]),
                (t = i[a++]),
                (o = i[a++]),
                (n +=
                    BASE64_ENCODE_CHAR[e >>> 2] +
                    BASE64_ENCODE_CHAR[63 & ((e << 4) | (t >>> 4))] +
                    BASE64_ENCODE_CHAR[63 & ((t << 2) | (o >>> 6))] +
                    BASE64_ENCODE_CHAR[63 & o]);
            return (e = i[a]), n + (BASE64_ENCODE_CHAR[e >>> 2] + BASE64_ENCODE_CHAR[(e << 4) & 63] + "==");
        });
        var exports = createMethod();
        COMMON_JS
            ?
            (module.exports = exports) :
            ((root.md5 = exports),
                AMD &&
                define(function() {
                    return exports;
                }));
    })();
}).call(
    this,
    require("_process"),
    "undefined" != typeof global ?
    global :
    "undefined" != typeof self ?
    self :
    "undefined" != typeof window ?
    window :
    {}
);